package com.chen.recruit.domain.dto;

import com.chen.recruit.common.valid.AddGroup;
import com.chen.recruit.common.valid.UpdateGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.*;

import java.util.Date;

@Data
@ApiModel("ResumeDto 简历数据传输对象")
public class ResumeDto {

    /**
     * 简历id
     */
    @ApiModelProperty(value = "简历id", required = true)
    @NotNull(message = "简历id不能为空", groups = { UpdateGroup.class })
    private Integer resumeId;

    /**
     * 学生id
     */
    @ApiModelProperty(value = "学生id", required = true)
    @NotNull(message = "学生id不能为空", groups = { AddGroup.class, UpdateGroup.class })
    private Integer studentId;

    /**
     * 大学
     */
    @ApiModelProperty(value = "大学", required = true)
    @NotBlank(message = "大学不能为空", groups = { AddGroup.class, UpdateGroup.class })
    private String college;

    /**
     * 专业
     */
    @ApiModelProperty(value = "专业", required = true)
    @NotBlank(message = "专业不能为空", groups = { AddGroup.class, UpdateGroup.class })
    private String major;

    /**
     * 姓名
     */
    @ApiModelProperty(value = "姓名", required = true)
    @NotBlank(message = "姓名不能为空", groups = { AddGroup.class, UpdateGroup.class })
    private String name;

    /**
     * 年龄
     */
    @ApiModelProperty(value = "年龄", required = true)
    @NotNull(message = "年龄不能为空", groups = { AddGroup.class, UpdateGroup.class })
    private Long age;

    /**
     * 性别（1男 0女）
     */
    @ApiModelProperty(value = "性别（1男 0女）", required = true)
    @NotNull(message = "性别（1男 0女）不能为空", groups = { AddGroup.class, UpdateGroup.class })
    private Integer sex;

    /**
     * 生日
     */
    @ApiModelProperty(value = "生日", required = true)
    @NotNull(message = "生日不能为空", groups = { AddGroup.class, UpdateGroup.class })
    private Date birthday;

    /**
     * 邮箱
     */
    @ApiModelProperty(value = "邮箱", required = true)
    @NotBlank(message = "邮箱不能为空", groups = { AddGroup.class, UpdateGroup.class })
    private String email;

    /**
     * 联系电话
     */
    @ApiModelProperty(value = "联系电话", required = true)
    @NotBlank(message = "联系电话不能为空", groups = { AddGroup.class, UpdateGroup.class })
    private String phoneNumber;

    /**
     * 求职意向
     */
    @ApiModelProperty(value = "求职意向", required = true)
    @NotBlank(message = "求职意向不能为空", groups = { AddGroup.class, UpdateGroup.class })
    private String jobSearchIntention;

    /**
     * 所获证书
     */
    @ApiModelProperty(value = "所获证书", required = true)
    @NotBlank(message = "所获证书不能为空", groups = { AddGroup.class, UpdateGroup.class })
    private String obtainCertificate;

    /**
     * 专业技能
     */
    @ApiModelProperty(value = "专业技能", required = true)
    @NotBlank(message = "专业技能不能为空", groups = { AddGroup.class, UpdateGroup.class })
    private String expertise;

    /**
     * 项目经历
     */
    @ApiModelProperty(value = "项目经历", required = true)
    @NotBlank(message = "项目经历不能为空", groups = { AddGroup.class, UpdateGroup.class })
    private String projectExperience;

    /**
     * 自我评价
     */
    @ApiModelProperty(value = "自我评价", required = true)
    @NotBlank(message = "自我评价不能为空", groups = { AddGroup.class, UpdateGroup.class })
    private String selfEvaluation;


}
